home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 41
/
Amiga Format CD41 (1999-06)(Future Publishing)(GB)[!][issue 1999-07].iso
/
-seriously_amiga-
/
programming
/
other
/
gui4cli
/
docs
/
changes
< prev
next >
Wrap
Text File
|
1999-04-29
|
8KB
|
203 lines
================================================================
=== VERSION 3.7 CHANGES ------------------------------------->>>
================================================================
New Events :
- xHOTKEY KeyCombination ON|OFF
Gui4Cli now installs a Commodities Exchange Broker through which
you can define various HotKeys. The KeyCombination can be something
like "rawkey lshift f2" (see guide) and it "happens" when the user
inputs this combination from whereever (i.e. even if a non - Gui4Cli
window is the active one). You can give it a GADID and SETGAD it
ON|OFF, and you can also UPDATE it, giving a new KeyCombination.
- xNOTIFY File|Directory ON|OFF
Will set notification on a file or directory and will "happen"
every time the given file/dir changes in some way (i.e. if it
is written to or deleted or whatever). You can give it a GADID
and SETGAD it ON|OFF and you can also UPDATE it, giving a new
file/dir name.
New Commands :
- SPEAK TextString
Will use the "translator.library" (LIBS:) and the "narrator.device"
(DEVS:), both of which you must have, to speak the given text. The
speaking is done synchronously - i.e. Gui4Cli will stop and wait
for the speaking to finish before proceeding.
- SET SPEAK Rate/Pitch/Sex/Mode/Volume/Freq
Will change the voice used in speaking to the new values you give.
See guide for their meaning. The default is: 150/110/0/0/64/22200
- SETSCREENTITLE GuiName Text
Will set the text that will be shown in the screen's title bar,
whenever the given Gui's window is the active one.
- FLASH - Will flash the screen - use it to indicate an error.
- MOVESCREEN GuiName/#ScreenName X Y
Will move the screen that GuiName is (or will) open on to position
X, Y. You can also give the ScreenName directly, by putting # in front.
- WORKBENCH OPEN|CLOSE - will open or close the Workbench
- SETATTR GuiName/GadID ATRIBUTE VALUE - will set the attributes of the
given gadget. Does the same as the ATTR gadget modifier, but dynamically.
Ex: SetAttr Mygui.gc/1 LVLINEDIST 3 - note that you would have to
redraw the listview for the change to be visible.
(This command was supposedly available in last version, but was not)
Sound support :
Standard mono IFF Samples, up to 64k in length, can now be loaded and
used as sound effects or reminders. The commands that handle them,
are similar to the image handling commands :
- LOADSOUND FileName Alias - will load the sample and name it "Alias"
- FREESOUND Alias - will free the above sample
- PLAYSOUND Alias - will play the sound once
- SETSOUND Alias VOLUME/SPEED value
Will set the VOLUME (1-64) or the SPEED (124-1000) ie the pitch.
Sounds can be used as effects on all types of gadgets, and on other
events like window open/close, RMB and xOnKey. There are 2 ways you
can do this.
1.- You can define the sound effects globally, and these will be
used in all guis:
> SET SndOpen|SndClose|SndGad|SndRMB|SndKey Alias
You can set all these from the Gui4Cli.gc gui (called from
the main requester in the WB tools menu)
2.- Or, you can define a different sound for every gadget, or key
or window etc, using the Attribute system, with:
> SETATTR mygui.gc/1 SOUND mysound <or> ATTR SOUND mysound
The sound will be played every time the event is triggered.
An attribute, if defined, will take precedence over a global sound.
Note that with ATTR, sounds can also be attached to xONOPEN, xONCLOSE,
xRMB and xONKEY events.
TextIn hook :
Added a TextIn gadget hook, providing the following :
xTextIn Gadget Attributes (for ATTR & SETATTR):
- TITYPE INT/FLOAT/HEX/DATE/UPPER/LOWER/STRING
Will let you define what kind of data can be entered in the
gadget. <Attr TiType FLOAT> for example will only let you
enter numbers and '.' into it. DATE will allow numbers and /.-
STRING allows anything. (*** still needs work on formating ***)
- TITRANS ON|OFF
The text in the textin gadget will, by default, be translated
as soon as you've finished entering data. Set this attribute to
OFF to stop translation.
xTextIn Internal variables :
$$TI.POS - the cursor position in the current textin gadget
$$TI.LENGTH - total length of string in the gadget
$$TI.REC - the string in the gadget
$$TI.ID - the ID of the gadget
$$TI.GUI - the name of the gui it's in
Internal variables :
- $$LV.VAR internal variable - will give you the (full path of) the
name of the listview variable. eg: mygui.gc/myvar
- $$RAND.xxx - will supply you with a random number from 0 to "xxx".
eg: $$Rand.100 - will give you a random number from 0 to 100.
Note that if you want a range of 1-100, you would have to do
x = $($$rand.99 + 1) - The function used is SAS's drand48() which
generates the number using a linear congruential algorithm and 48bit
arithmetic... (swear to God :)
- $$MEM.CHIP - the remaining chip memory
- $$MEM.FAST - the remaining fast memory
- $$MEM.ALL - all the remaining memory
- $$MEM.CLARGE - largest chip memory block (slow)
- $$MEM.FLARGE - largest fast mem block (slow)
- $$G4C.TABS - current tab size
- $$G4C.GRID - current grid size
Attributes (ATTR & SETATTR) :
- LVFILTER Pattern
Will filter the files in a dir listview according to the
pattern you give - examp - make a LV hide all the icons:
- SetAttr MyGui.gc/1 LVFILTER "~(#?.info)"
Must <LVDir refresh> for the change to actually take place.
Improvements :
- MakeScreen will now also understand the size argument as :
Width/Height/Depth/ViewMode - viewmode is optional
> MakeScreen MyScreen 640/512/4/0x21004 'my screen'
- You can now give -10 as Top in a WinBig command and the window
will be positioned just under the screen title bar.
- New operator: !! (double exclamation) means not equal, but unlike
the != operator, it's case insensitive - i.e. <if a !! A> is FALSE
- Made a big internal change in the way commands are recognized
and structured. As a result, Gui4Cli now parses files a little
faster (we're talking microseconds here.. if you can tell the
difference you're probably an alien). More importantly it allows
me to add and manage commands easier.
- The second part of an internal variable will now be translated
if it's a variable - (eg: $$RAND.$x) - $x must be a simple
variable - no paths, [], or var-in-var allowed.
Changes to Guis :
- Changed the Gui4Cli.gc gui. The preferences now include sound
effects. Also, now they can be saved in file guis:Gui4Cli.prefs
which is a file that Gui4Cli will look for the 1st time it starts
up and run it, if it finds it.
Bugs & Fixes :
- Fixed nasty bug in Set Buffers NewSize.
- Some programs like DPaint and Scala ignored arexx messages sent
from Gui4Cli with the SendRexx command. That has now been fixed.
They wanted the ln_Name field of the msg to be set to "REXX"
- Buffers for the SETWINTITLE and SETSCREENTITLE commands are
now allocated dynamically, so there no need anymore to ensure
that the string buffer you give is large enough to fit the
translated version of the string. You can now do :
> SetWinTitle mygui.gc '$$lv.dir'
- SetWinTitle will now recognise the #this keyword
- Changed tab handling in listviews. Before, tabs were expanded
when the file was loaded. This meant that tabs became spaces
if you thereafter saved the file again with LVSave. Now, the
file is loaded as is, and tab expansion is done in the Listview
hook, at rendering time. It's better this way..
- Changed the LVFormat Extension (used in the CedBar.gc gui)
to account for the above change.
- MakeScreen - background pics now have correct colors.
- SetColor will disregard colors which are out of range.
- Fixed WinOnMouse mouse position. It didn't account for different
screen positions.